草庐IT

linux - Chroot 与 Docker

全部标签

php - XSym 符号链接(symbolic link)不能在 Docker for Windows 上的 PHP 中使用

在Windows上的Docker容器内使用PHP时(例如使用DDEV),在容器内创建的符号链接(symboliclink)(例如由composer创建)似乎无法正确处理PHP的文件流。场景想象一下下面的PHP代码如果在容器内执行,它只输出demo-base-directory,但是缺少demo-symbolic-link(同样的例子在Linux上按预期运行/Docker容器内的Unix系统)array(1){[0]=>string(19)"demo-base-directory"}在主机系统中查看符号链接(symboliclink)时(例如,在WindowsPowerShell中使用c

php - Linux 服务器 PHP 更新回滚

我有一个专用服务器托管着许多当前运行PHP5.2的网站。我需要升级PHP版本,有人告诉我可以使用以下命令通过SSH执行此操作:yum升级php不,我有点担心进行更新和网站无法再运行,那么是否有我可以使用的回滚命令,以便在出现问题时我可以快速切换回PHP5.2?非常感谢 最佳答案 你最好先知道从php5.2到php5.3有什么变化,如果你认为这些变化不会影响你的脚本,然后升级,如果没有,那么继续使用php5.2或在你的脚本中进行必要的更改首先(我个人建议您升级到PHP5.3),这里是更改列表MigratingfromPHP5.2to5

php - Docker apache2 不会考虑新的 000-default.conf

我正在尝试对Laravel5.2应用进行docker化。为此,我使用以下图片,php:apachemysql:5.7下面是我的docker-compose.ymlweb:build:.volumes:-./:/var/www/htmlports:-"9899:80"links:-dbcommand:[/usr/sbin/apache2ctl,-D,FOREGROUND]db:image:mysql:5.7volumes:-/home/data:/var/lib/mysqlenvironment:MYSQL_DATABASE:customMYSQL_ROOT_PASSWORD:custo

php - Xdebug(在 Docker 容器内)忽略 XDEBUG_CONFIG 环境变量

我正在Docker上运行一个PHP应用程序,我想使用XDebug对其进行调试。在我的docker-compose中,我在phpfpm部分添加了以下行:environment:XDEBUG_CONFIG:"remote_enable=1remote_host=192.168.110.29remote_port=9000idekey=PHPSTORMremote_autostart=1"PHP_IDE_CONFIG:"serverName=reports.dev"我以正确的方式配置了PHPStorm,监听端口9000并运行了应用程序。应用程序运行完美,但XDebug似乎无法运行。如果我将配

php - 工作的 docker 容器上的错误 500

我在laradock(nginx、mariadb、phpfpm、php5.6)上使用slimframwork3应用程序,所以我犯了一个愚蠢的语法错误:$view->addExtension(new\Slim\Views\TwigExtension($container->router,$container->request->getUri(),));getUri()之后的逗号在chrome上给我错误500,这让我很沮丧,所以我在windows上的wamp上尝试了我的应用程序,我得到:Parseerror:syntaxerror,unexpected')'inC:\wamp64\www\

php glob() 如果在 Windows 上为空则返回数组,在 Linux 上则没有

目前我有:$files=array_merge(glob($path_.'*.js'),glob($path_.'*.css'));如果目录在Windows上为空,则返回一个空数组。如果它们在linux上为空,则不返回任何内容。这会在Linux上产生这个错误:警告:array_merge()[function.array-merge]:参数#1不是数组Windows:Apache:2.2.21PHP:5.3.10Linux/Debian:Apache:2.2.16PHP:5.3.10经过进一步的研究和测试,我发现这是PHP中的一个错误:https://bugs.php.net/bug.

php - 如何将 composer 与 docker-compose 一起使用?

我正在配置docker-compose.yml文件,我想运行一个包含Elastic、Redis、Symfony和composer的PHP堆栈。现在我遇到的问题是,我不知道如何将composer与docker一起使用,因为composer的某些功能需要PHP和一些扩展。我不想构建一个新镜像并在其上安装Nginx和PHP以及PHP的composer和扩展,我不想将它们全部放在一个不同的镜像中。到目前为止我尝试过的是这样的:version:'2'services:nginx:image:tutum/nginxports:-"80:80"volumes:-./nginx/default:/et

Docker 容器中的 PHP 国际扩展

我试图在我的Docker容器中加载intlPHP扩展,但它似乎不起作用。已经尝试过这个https://github.com/docker-library/php/issues/57但我仍然收到相同的错误消息:configure:error:in`/usr/src/php/ext/intl':configure:error:C++preprocessor"/lib/cpp"failssanitycheckSee`config.log'formoredetails我的Docker文件如下所示:RUNapt-get-yupdate\&&apt-getinstall-ylibicu-dev\&

php - 尝试在 Docker 官方镜像中将 freetype 添加到 php-gd

我正在尝试为PHPGD安装添加一些功能。我使用DockerPHP“官方”版本作为基础(php:7.1.15-fpm-jessie)。我当前的生产环境使用CentOS,其中GD模块支持FreeType、JPEG和PNG,正如您在phpinfo输出中看到的:GDSupport=>enabledGDheadersVersion=>2.2.5GDlibraryVersion=>2.2.5FreeTypeSupport=>enabledFreeTypeLinkage=>withfreetypeFreeTypeVersion=>2.4.11GIFReadSupport=>enabledGIFCre

Linux 上的 PHP 和 RAW SOCKETS

做一个就够了吗sudosetcapcap_net_raw=eip/usr/bin/php5能够在Linux中的PHP(而非CLI)中使用RAWSOCKETS?如果是,那么它不工作(但开始在CLI中工作但不使用Apache)所以我想我也必须将这些权限授予Apache,但我不知道如何去做。你能帮帮我吗?来自PHP脚本的错误:警告:socket_create():无法创建套接字[1]:中不允许的操作PHP脚本:$package="\x08\x00\x7d\x4b\x00\x00\x00\x00PingHost";$socket=socket_create(AF_INET,SOCK_RAW,1